home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / mac / LOGIC Apple II 5.25" Library - ProDOS / PRO017.dsk / STARTUP.bas < prev    next >
BASIC Source File  |  2012-02-16  |  8KB  |  102 lines

  1. 100  GOTO 1820
  2. 110  GOTO 120
  3. 120  PRINT  CHR$(4);"PR#3":D$ =  CHR$(4): DIM L$(200)
  4. 150 X = 1: PRINT  CHR$(4);"PREFIX": INPUT B$: HOME : VTAB 1: POKE 1403,5: INVERSE : PRINT " MST SUPSTART ": NORMAL : VTAB 2: POKE 1403,5: PRINT "Diskette ";B$: PRINT  CHR$(4);"OPEN ";B$;",TDIR": PRINT  CHR$(4);"READ ";B$
  5. 290  INPUT S$:X = X +1: IF X <5  THEN 290
  6. 320  IF S$ < >""  THEN L$(X -4) = S$: GOTO 290
  7. 330  PRINT  CHR$(4);"CLOSE ";B$:D = X -5:A = 0
  8. 360  IF A <1  OR A >D  THEN A = 0
  9. 370 R = 5:A = A +1:B = A +14: HOME : HTAB 20: HOME : VTAB 1: POKE 1403,5: INVERSE : PRINT " VISION SYSTEM ": NORMAL : VTAB 2: POKE 1403,5: PRINT "Diskette ";B$: VTAB 3: POKE 1403,5: PRINT "Files ";D: FOR X = A TO B: VTAB R: POKE 1403,1: PRINT X;: IF X <10  THEN  PRINT " ";
  10. 590  PRINT  MID$ (L$(X),1,16);" "; MID$ (L$(X),18,3): VTAB R: POKE 1403,29: PRINT X +15; MID$ (L$(X +15),1,16);" "; MID$ (L$(X +15),18,3):R = R +1: NEXT X: VTAB 21: POKE 1403,1: PRINT "Cnt-F Page Ahead  Cntl-B Page Back  Arrows Move  C-Change Drives": VTAB 22: POKE 1403,1
  11. 591  PRINT "Return = Select   'Q' = End  / = Top Prefix  T = Read Txt  P= Printer": VTAB 23: POKE 1403,1: PRINT "L = Lock   U = Unlock   D = Delete  S = Stats for selection.":X = A:R = 5:C = 1
  12. 770  IF R <5  AND C = 1  THEN X = A +29:R = 19:C = 29: GOTO 810
  13. 780  IF R >19  AND C = 1  THEN R = 5:C = 29: GOTO 810
  14. 790  IF R <5  AND C = 29  THEN R = 19:C = 1: GOTO 810
  15. 800  IF R >19  AND C = 29  THEN X = A:R = 5:C = 1
  16. 810  VTAB R: POKE 1403,C
  17. 830  VTAB R: POKE 1403,C: GET A$: IF A$ = "S"  THEN  POKE 1403,1
  18. 870  IF A$ = "T"  THEN  GOTO 1370
  19. 880  IF A$ = "/"  THEN  GOTO 1070
  20. 890  IF A$ = "S"  THEN  VTAB 23: HTAB 1: PRINT  LEFT$(L$(X),60): FOR I = 1 TO 3200: NEXT : VTAB 23: PRINT "L = Lock   U = Unlock   D = Delete  S = Stats for selection.        ": GOTO 830
  21. 900  IF A$ = "C"  AND U = 2  THEN  PRINT : PRINT  CHR$(4)"PREFIX/,D1": PRINT : GOTO 1220
  22. 910  IF A$ = "C"  THEN  PRINT : PRINT  CHR$(4)"PREFIX/,D2":U = 2: GOTO 1220
  23. 920  IF A$ = "P"  THEN  GOTO 1550
  24. 930  IF A$ = "L"  OR A$ = "U"  OR A$ = "D"  THEN  GOTO 1190
  25. 940 O =  -16336:G =  PEEK(O) - PEEK(O) + PEEK(O) - PEEK(O) + PEEK(O) - PEEK(O): IF L$(X) = ""  THEN 1010
  26. 970  IF  ASC(A$) = 13  THEN F$ =  MID$ (L$(X),2,15): INVERSE : PRINT X;" ";F$: NORMAL 
  27. 980  IF A$ = "Q"  THEN  TEXT : HOME : END 
  28. 990  IF  ASC(A$) = 13  AND  MID$ (L$(X),18,3) = "DIR"  THEN  PRINT D$"PREFIX"F$: PRINT D$"PREFIX": INPUT "";P$: GOTO 1140
  29. 1000  IF  ASC(A$) = 13  THEN  HOME : PRINT  CHR$(4);"-";F$
  30. 1010  IF  ASC(A$) = 11  THEN X = X -1:R = R -1
  31. 1020  IF  ASC(A$) = 10  THEN X = X +1:R = R +1
  32. 1030  IF  ASC(A$) = 06  THEN A = A +29: GOTO 360
  33. 1040  IF  ASC(A$) = 02  THEN A = A -31: GOTO 360
  34. 1050  IF  ASC(A$) = 27  THEN  TEXT : HOME : END 
  35. 1060  GOTO 770
  36. 1070  PRINT D$"CLOSE": PRINT D$"PREFIX/"
  37. 1090 X = 1: FOR E = 1 TO 200:L$(E) = "": NEXT : PRINT  CHR$(4)"FRE"
  38. 1140  PRINT D$"CLOSE": FOR E = 1 TO 200:L$(E) = "": NEXT E: GOTO 150
  39. 1190  IF A$ = "L"  THEN F$ =  MID$ (L$(X),2,15): INVERSE : PRINT X;"*";F$: NORMAL : PRINT  CHR$(4)"LOCK"F$
  40. 1200  IF A$ = "S"  THEN  VTAB 23: POKE 1403,1: PRINT L$(E): FOR I = 1 TO 2200: NEXT : PRINT "L = Lock   U = Unlock   D = Delete  S = Stats for selection.": GOTO 810
  41. 1210  IF A$ = "U"  THEN F$ =  MID$ (L$(X),2,15): INVERSE : PRINT X;" ";F$: NORMAL : PRINT  CHR$(4)"UNLOCK";F$
  42. 1220  IF A$ < >"D"  THEN  FOR H = 1 TO 200:L$(X) = "": NEXT : GOTO 1090
  43. 1230 F$ =  MID$ (L$(X),2,15): INVERSE : PRINT X;"-";F$: NORMAL : VTAB 23: PRINT "                  <CTRL-G><CTRL-G>                                       ": VTAB 23: PRINT "**** DELETE FILE <CTRL-G><CTRL-G>  Y/N (>";: GET C$: IF C$ < >"Y"  THEN A$ = "": GOTO 1220
  44. 1330  PRINT  CHR$(4)"UNLOCK"F$: PRINT  CHR$(4)"DELETE"F$:A$ = "": GOTO 1220
  45. 1370  IF  MID$ (L$(X),18,3) < >"TXT"  THEN  GOTO 1220
  46. 1380  ONERR  GOTO 1470
  47. 1390 F$ =  MID$ (L$(X),2,15): TEXT : HOME : PRINT  CHR$(4)"OPEN"F$: PRINT  CHR$(4)"READ"F$
  48. 1440  GET K$: PRINT K$;: GOTO 1440
  49. 1470  POKE 216,0: PRINT  CHR$(4)"CLOSE"F$: INVERSE : PRINT : PRINT "  PRESS KEY TO E X I T {} ": GET Q$: PRINT : GOTO 1220
  50. 1550  TEXT : HOME : INPUT "PRINT FILE TO (D)EVICE OR (T)EXTFILE?  (>";H$: IF H$ < >"D"  AND H$ < >"T"  THEN  GOTO 1550
  51. 1551  IF H$ = "D"  THEN  GOTO 1590
  52. 1552  PRINT  CHR$(4)"OPEN FILE.CAT": PRINT  CHR$(4)"CLOSE FILE.CAT": PRINT  CHR$(4)"DELETE FILE.CAT": PRINT : PRINT "WORKING....": PRINT  CHR$(4)"OPEN FILE.CAT": PRINT  CHR$(4)"WRITE FILE.CAT":T = 999: GOSUB 1680: PRINT  CHR$(4)"CLOSE FILE.CAT": GOTO 1780
  53. 1580  VTAB 10
  54. 1590  INPUT " WHAT SLOT IS PRINTER CONNECTED TO ?";P: PRINT : IF P <1  OR P >5  THEN  GOTO 1560
  55. 1620  INPUT "Enter a heading for this report (> ";N$: PRINT : INPUT "READY YOUR PRINTER AND PRESS RETURN (> ";O$: PRINT : PRINT  CHR$(4)"PR#"P: PRINT  CHR$(9)"80N"
  56. 1680  PRINT : PRINT "Directory listing for prefix (> ";B$;"    File count = ";D: PRINT N$: FOR S = 1 TO D: PRINT L$(S): NEXT : PRINT : PRINT "-------------------------------------------------------------------------------": PRINT : IF T = 999  THEN  RETURN 
  57. 1770  PRINT 
  58. 1780  PRINT : PRINT  CHR$(4)"PR#3": PRINT : RUN 
  59. 1820 G$ = "                                      ":L$ = "***************************************":J$ = "*                                     *":I$ = "???JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC": HOME : PRINT L$: PRINT J$: PRINT "*     SYSTEM DATE AND TIME UTILITY    *": PRINT J$: PRINT L$: VTAB 10
  60. 1821 K =  PEEK(49040) - INT( PEEK(49040)/32) *32:M =  INT( PEEK(49041)/2):J = ( PEEK(49041) -M *2) *8 + INT( PEEK(49040)/32):M$ =  MID$ (I$,J *3 +1,3):L =  PEEK(49042):F =  PEEK(49043): IF F >11  THEN Q = 1
  61. 2000  IF F >12  THEN F = F -12
  62. 2010  IF F = 0  THEN F = 12
  63. 2020  PRINT "       The current settings are:": PRINT : PRINT : PRINT "       DATE: ";: IF K = 0  THEN  PRINT "<no date>": GOTO 2120
  64. 2070  IF K <10  THEN  PRINT "0";
  65. 2080  PRINT K;"-";: PRINT M$;"-";: IF M <10  THEN  PRINT "0";
  66. 2110  PRINT M
  67. 2120  PRINT : PRINT "             TIME: ";: IF F = 12  AND L = 0  AND K = 0  THEN  PRINT "<NO TIME>": GOTO 2210
  68. 2150  IF F <10  THEN  PRINT "0";
  69. 2160  PRINT F;":";: IF L <10  THEN  PRINT "0";
  70. 2180  PRINT L;: IF Q = 1  THEN  PRINT "  PM"
  71. 2200  IF Q = 0  THEN  PRINT "  AM"
  72. 2210  VTAB 18: PRINT "    Update system date and time? Y/N ";: GET A$: VTAB 18: HTAB 2: PRINT G$: IF A$ < >"Y"  AND A$ < >"y"  THEN  VTAB 22: GOTO 110
  73. 2280  VTAB 13: PRINT "       ENTER DATE: DD-MMM-YY";
  74. 2300  HTAB 20: PRINT "DD";: HTAB 20: GET A$: IF (A$ <"0")  OR (A$ >"3") GOTO 2300
  75. 2350 K =  VAL(A$): PRINT A$;: GET A$: IF (A$ <"0")  OR (A$ >"9") GOTO 2300
  76. 2390 K = K *10 + VAL(A$): PRINT A$;: IF K >31  OR K <1 GOTO 2300
  77. 2420  HTAB 23: PRINT "MMM";: HTAB 23:N = 1:E$ = ""
  78. 2470  GET A$:E$ = E$ +A$: PRINT A$;:J = 4
  79. 2510  IF E$ =  MID$ (I$,J,N)  THEN  GOTO 2550
  80. 2520 J = J +3: IF J <39  THEN  GOTO 2510
  81. 2540  GOTO 2420
  82. 2550 N = N +1: IF N <4  THEN  GOTO 2470
  83. 2570 J = (J -1)/3
  84. 2580  HTAB 27: PRINT "YY";: HTAB 27: GET A$: IF (A$ <"0")  OR (A$ >"9") GOTO 2580
  85. 2630 M =  VAL(A$): PRINT A$;: GET A$: IF (A$ <"0")  OR (A$ >"9") GOTO 2580
  86. 2670 M = M *10 + VAL(A$): PRINT A$: VTAB 18: PRINT "             CORRECT? Y/N ";: GET A$: VTAB 18: HTAB 2: PRINT G$: IF A$ = "N"  OR A$ = "n" GOTO 2280
  87. 2760  VTAB 13: HTAB 8: PRINT "     ": VTAB 15: HTAB 8: PRINT "ENTER TIME: HH:MM  AM";
  88. 2820  HTAB 20: PRINT "HH";: HTAB 20: GET A$: IF (A$ <"0")  OR (A$ >"1") GOTO 2820
  89. 2870 F =  VAL(A$): PRINT A$;: GET A$: IF (A$ <"0")  OR (A$ >"9") GOTO 2820
  90. 2910 F = 10 *F + VAL(A$): PRINT A$;: IF F >12  OR F <1 GOTO 2820
  91. 2940  HTAB 23: PRINT "MM";: HTAB 23: GET A$: IF (A$ <"0")  OR (A$ >"5") GOTO 2940
  92. 2990 L =  VAL(A$): PRINT A$;: GET A$: IF (A$ <"0")  OR (A$ >"9") GOTO 2940
  93. 3030 L = 10 *L + VAL(A$): PRINT A$;: IF L >59 GOTO 2940
  94. 3060  HTAB 27: GET P$: IF (P$ < >"A")  AND (P$ < >"a")  AND (P$ < >"P")  AND (P$ < >"p")  AND (P$ < >" ")  AND (P$ < > CHR$(13)) GOTO 3060
  95. 3090  IF (P$ = "P")  OR (P$ = "p")  THEN  PRINT "P";
  96. 3100  VTAB 18: HTAB 2: PRINT "            CORRECT? Y/N ";: GET A$: VTAB 18: HTAB 2: PRINT G$: IF (A$ < >"N")  AND (A$ < >"n") GOTO 3190
  97. 3180  GOTO 2760
  98. 3190  VTAB 15: HTAB 8: PRINT "     ": POKE 49041,M *2 +(J >7): IF J >7  THEN  POKE 49040,(J -8) *32 +K
  99. 3240  IF J <8  THEN  POKE 49040,J *32 +K
  100. 3250  IF F = 12  THEN F = 0
  101. 3260  IF P$ = "P"  OR P$ = "p"  THEN F = F +12
  102. 3270  POKE 49043,F: POKE 49042,L: PRINT : VTAB 20: PRINT "      SYSTEM DATE AND TIME UPDATED": PRINT : PRINT "  (DOES NOT SET CLOCK/CALENDAR CARDS)": FOR S = 1 TO 2600: NEXT : CLEAR : PRINT  CHR$(4)"FRE": GOTO 110